Nginx
####
####
####
Redis
####
####
####
Protobuf
int32编码原理
- 一个字节8位,该编码使用后7位用来储存数据,第一位用来表示当前字节的下一个字节是不是当前数字的一部分。
- 300的二进制是00000000100101100,按7位分割后0000010 0101100,转换网络序后(网络序是大端序吗?)0101100 0000010,然后添加第一位的0或1后,10101100 00000010.
sint32编码原理
- 在int32中,负数总是被翻译为一个巨大的正整数,需要10个字节表示,改用sint32更节省空间,其对负数采用zigzag编码。
1
2
3
4
5
6
70 0
-1 1
1 2
-2 3
2 4
2147483647 4294967294
2147483648 4294967295
####
Kafka
####
####
ZeroMQ
####
LevelDB
####
####
####
####
####